FIG. 1 shows a conventional engine control device for controlling the operation of a fuel injection type engine. In FIG. 1, the engine illustrated comprises an engine proper 1 having a water jacket la formed in an engine block for circulation of a coolant, an intake passage or manifold 1b connected with the engine proper 1 for supplying intake air, an exhaust passage or manifold 1c connected with the engine proper 1 for discharging exhaust gas to the ambient atmosphere, an air flow sensor 2 for sensing an operating conditioning the flow rate of intake air sucked into the engine proper 1, a crank angle sensor 3 adapted to generate an output signal in synchronization with a predetermined crank angle, i.e., whenever the engine proper 1 takes the predetermined crank angle, a temperature sensor 4 mounted on the engine block for sensing another operating condition the temperature of the engine proper 1, i.e., the temperature of the coolant in the water jacket 1a, a control unit 5 connected to receive the output signals from the air flow sensor 2, the crank angle sensor 3 and the temperature sensor 4 for calculating an appropriate fuel injection pulse width based on these output signals and generating an output signal representative of the fuel injection pulse width thus calculated, and a fuel injector 6 disposed in the intake manifold 1b and connected to receive the output signal of the control unit 5 for injecting fuel into the intake manifold 1b dependent on the control unit output signal.
The control unit 5 has a control program stored therein for controlling the operation of the engine. Specifically, the control unit 5 operates to control the engine in the manner as shown in flow charts of FIGS. 2 and 3. FIG. 2 illustrates a main routine and FIG. 3 a crank angle interrupt routine for executing interrupt processing by means of a crank angle signal (the output signal of the crank angle sensor 3) which is generated by the crank angle sensor 3 in synchronization with the predetermined crank angle of the engine. Referring first to FIG. 2, after an unillustrated ignition switch is turned on to start the engine, the control program stored in the control unit 5 is initialized in Step S301. In Step S302, engine stall processing is executed, and in Step S303, it is determined whether or not the engine is stalled. If so, the process returns to Step S302, and if not, the process proceeds to Step S304 wherein various modification coefficients K.sub.C such as a warm-up modification coefficient which is used for modifying the warm-up operation of the engine are calculated based on various factors representative of engine operating conditions such as the engine temperature as sensed by the temperature sensor 4. Thereafter, the process returns to Step S303.
On the other hand, the crank angle interrupt routine illustrated in FIG. 3 is executed as follows. First, in Step S401, the period between the successive crank angle signals, produced by the crank angle sensor 3 is measured. The period is the time interval between the instant when the engine takes a predetermined crank angle in one engine cycle and the instant when the engine takes that crank angle in the following engine cycle; The results thus obtained are used as a kind of information representing the number of revolutions per minute of the engine. Then, in Step S402, the amount of intake air Q.sub.n sucked into the engine per engine cycle (i.e., the intake air amount sucked between successive crank angle signals or successive intake strokes) is calculated from the output signal of the air-flow sensor 2 which is representative of the flow rate of intake air as sensed, and in Step S403, a basic injection pulse width .tau. is calculated so as to determine a basic amount of fuel to be injected which is suited to the interstroke intake air amount Q.sub.n calculated in Step S402. The basic injection pulse width .tau. is calculated as follows: EQU .tau. =Q.sub.N .times.K.sub.G
where K.sub.G is a constant which is determined by the pulse width versus fuel injection amount characteristic of the fuel injector 6.
In Step S404, a transitional modification coefficient K.sub.ACC for modifying the basic amount of fuel to be injected from the fuel injector 6 during transitional operation of the engine is calculated which is equal to a change (Q.sub.n -Q.sub.n-1) in the amount of intake air sucked into the engine between the successive engine intake strokes. Then, in Step 405, using the transitional modification coefficient K.sub.ACC thus calculated in Step S404, the basic injection pulse width .tau. previously determined in Step S403 is subjected to transitional modification to provide a transitionally modified injection pulse width .tau..sub.1 which is expressed as follows: EQU .tau..sub.1 =.tau..times.K.sub.ACC
Subsequently, in Step S406, using other various modification coefficients K.sub.C which are calculated in Step S304 of the main routine shown in FIG. 2, the transitionally modified injection pulse width .tau..sub.1 is further subjected to other various modifications to provide a finally modified injection pulse width .tau..sub.2 which is expressed by the following formula: EQU .tau..sub.2 =.tau..sub.1 .times.K.sub.C
In Step S407, the control unit 5 operates to output the finally modified injection pulse width .tau..sub.2 calculated in the above manner to the fuel injector 6 so that fuel is injected from the fuel injector 6 into the intake passage 1b in accordance with the finally modified injection pulse width .tau..sub.2.
With the conventional engine control device as described above, various modification coefficients K.sub.C are first calculated in the main routine, and then interstroke intake air amounts (i.e., amount of air) sucked into the engine between successive intake strokes) are calculated in the crank angle interrupt routine whereby the basic injection pulse width .tau. is determined based on the interstroke intake air amount and then modified by multiplying it with the transitional modification coefficient K.sub.CC and other various modification coefficients K.sub.C to provide a finally modified injection pulse width .tau..sub.2 which is output from the control unit 5 to the fuel injector 6 in synchronization with the output signal of the crank angle sensor 3, thereby enabling the engine to operate at a predetermined air/fuel ratio.
Recently, however, various transitional modifications of engine control are required in order to improve engine performance through optimal engine control, i.e., to increase the maximum RPM of the engine for increased maximum output power, improve transition characteristics of the engine and the like. As a result, it is a general trend that engine control becomes more and more complicated and the time required for such modification processings becomes longer year by year. Accordingly, in the past, if the entire processes of the crank angle interrupt routine are executed for every crank angle signal particularly during the high RPM operation of the engine, there would be introduced time lags in operation of the fuel injector 6. Accordingly, the injector 6 could not be operated at optimal timing in synchronization with the output signal of the crank angle sensor 3 so that the time for processing the main routine becomes longer, thus making it difficult for the various modifications to be effectively and timely reflected on the engine control.